package com.huangjue.backend.mapper;

import com.huangjue.backend.entity.Teacher;
import com.huangjue.backend.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;

@Mapper
public interface UserMapper {

    // 根据邮箱和密码查询（登录验证）
    User selectByEmailAndPassword(@Param("email") String email, @Param("password") String password);

    // 检查邮箱是否存在
    long countByEmail(@Param("email") String email);
    
    // 插入用户
    int insert(User user);

    // 根据userId查询用户
    User selectById(Integer userId);



    // 更新头像
    int updateAvatar(@Param("userId") Integer userId, @Param("picture") String pictureUrl);

    // 修改密码
    int updatePassword(@Param("userId") Integer userId, @Param("password") String password);

    // 修改邮箱
    int updateEmail(@Param("userId") Integer userId, @Param("email") String email, @Param("password") String password);

    //获取推荐老师
    List<Teacher> getRecommendTeacher();

    int updateUsername(@Param("userId") Integer userId,@Param("nickname") String nickname);


    List<Map<String, Object>> selectNicknameByIds(@Param("userIds") List<Integer> userIds);
}